Translating a Linear Logic Programming Language into Java

نویسندگان

  • Mutsunori Banbara
  • Naoyuki Tamura
چکیده

There have been several proposals for logic programming language based on linear logic: Lolli [8], Lygon [7], LO [3], LinLog [2], Forum [11], HACL [10]. In these languages, it is possible to create and consume resources dynamically as logical formulas. The efficient handling of resource formulas is, therefore, an important issue in the implementation of these languages. Lolli, Lygon, and Forum are implemented as interpreter systems; Lolli is on SML and λProlog, Lygon is on Prolog, Forum is on SML, λProlog and Prolog. However, none of them have been implemented in Java. In this paper, we describe the Prolog Café 1 system which translates a linear logic programming language called LLP to Java via the LLPAM [12][5], an extension of the standard WAM [16][1] for LLP. LLP is a superset of Prolog and a subset of Lolli. The main difference from the first implementation [4] is resource compilation. That is to say, resource formulas are compiled into closures which consist of a reference of compiled code and a set of bindings for free variables. Calling these resources is integrated with the ordinary predicate invocation. Prolog Café is portable to any platform supporting Java and easily expandable with increasing Java’s class libraries. In performance, on average, Prolog Café generate 2.2 times faster code for a set of classical Prolog benchmarks compared with jProlog. 1 http://pascal.seg.kobe-u.ac.jp/~banbara/PrologCafe/ c ©2003 Published by Elsevier Science B. V.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Runtime Analysis of Linear Temporal Logic Specifications

This report presents an approach to checking a running program against its Linear Temporal Logic (LTL) specifications. LTL is a widely used logic for expressing properties of programs viewed as sets of executions. Our approach consists of translating LTL formulae to finite-state automata, which are used as observers of the program behavior. The translation algorithm we propose modifies standard...

متن کامل

Thesis Proposal Language Interoperability and Logic Programming Languages

Logic programming languages, such as Prolog, are found to be particularly appropriate for solving problems involving logical deduction from a set of data. The .NET framework aims to support language interoperability, so it could be valuable to find ways of using languages such as Prolog within the .NET framework. One way in which this could be done is by translating Prolog to the new language C...

متن کامل

Links: Linking Theory to Practice for the Web Case for Support

e-Commerce, e-Government, e-Science — the coining of such words reflects the growing importance of the World Wide Web in all aspects of our lives. Consumer spending on the web in Britain exceeds £12 billion a year. A typical web program involves three tiers. The front end is the browser running on your computer. The middle tier is a server, executing the logic that controls your interaction wit...

متن کامل

Beauty and the Beast: Translating Smalltalk to Java

The importance of Model-Driven Development (MDE) in Software Engineering has been in a constant increase. Model transformation, a key element of MDE, allows for the definition and implementation of the operations on models. This paper is about assessing how the Smalltalk programming language may be used as a modeling language to transform Smalltalk applications into Java ones. To our knowledge,...

متن کامل

Language interoperability and logic programming languages

We discuss P#, our implementation of a tool which allows interoperation between a concurrent superset of the Prolog programming language and C#. This enables Prolog to be used as a native implementation language for Microsoft’s .NET platform. P# compiles a linear logic extension of Prolog to C# source code. We can thus create C# objects from Prolog and use C#’s graphical, networking and other l...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Electr. Notes Theor. Comput. Sci.

دوره 30  شماره 

صفحات  -

تاریخ انتشار 1999